﻿/**
 * Copyright (c) 2003-2016, CKSource - Frederico Knabben. All rights reserved.
 * For licensing, see LICENSE.md or http://ckeditor.com/license
 */

// Tool scripts for the sample pages.
// This file can be ignored and is not required to make use of CKEditor.

        (function () {
            CKEDITOR.on('instanceReady', function (ev) {
                // Check for sample compliance.
                var editor = ev.editor,
                        meta = CKEDITOR.document.$.getElementsByName('ckeditor-sample-required-plugins'),
                        requires = meta.length ? CKEDITOR.dom.element.get(meta[ 0 ]).getAttribute('content').split(',') : [],
                        missing = [],
                        i;

                if (requires.length) {
                    for (i = 0; i < requires.length; i++) {
                        if (!editor.plugins[ requires[ i ] ])
                            missing.push('<code>' + requires[ i ] + '</code>');
                    }

                    if (missing.length) {
                        var warn = CKEDITOR.dom.element.createFromHtml(
                                '<div class="warning">' +
                                '<span>To fully experience this demo, the ' + missing.join(', ') + ' plugin' + (missing.length > 1 ? 's are' : ' is') + ' required.</span>' +
                                '</div>'
                                );
                        warn.insertBefore(editor.container);
                    }
                }

                // Set icons.
                var doc = new CKEDITOR.dom.document(document),
                        icons = doc.find('.button_icon');

                for (i = 0; i < icons.count(); i++) {
                    var icon = icons.getItem(i),
                            name = icon.getAttribute('data-icon'),
                            style = CKEDITOR.skin.getIconStyle(name, (CKEDITOR.lang.dir == 'rtl'));

                    icon.addClass('cke_button_icon');
                    icon.addClass('cke_button__' + name + '_icon');
                    icon.setAttribute('style', style);
                    icon.setStyle('float', 'none');

                }
            });
        })();
